#include<iostream>
using namespace std;
#include<algorithm>
#include<assert.h>

#include"vector.hpp"


namespace jyz
{
	void test()
	{
		jyz::vector<int>v1;
		v1.push_back(1);
		v1.push_back(2);
		v1.push_back(3);
		v1.push_back(4);
		v1.push_back(5);
		v1.push_back(6);
		v1.push_back(7);
		for (auto& e : v1)
		{
			cout << e << " ";
		}
		cout << endl;
		jyz::vector<int> v2({11,22,33,44});
		for (auto& e : v2)
		{
			cout << e << " ";
		}
		cout << endl;

		//jyz::vector<int> v3(v1.begin(),v1.end());
		//for (auto& e : v3)
		//{
		//	cout << e << " ";
		//}
		//v.insert(2, 10);
		//v.erase(v.begin() + 2);
		//for (int i = 0; i < v.size(); i++)
		//{
		//	cout << v[i] << " ";
		//}
		//cout << endl;
		//cout << v.front() << endl;
		//cout << v.back() << endl;
		//jyz::vector<int>::iterator it1 = v.begin();
		//jyz::vector<int>::const_iterator it2 = v.begin();
		//while (it1 != v.end())
		//{
		//	cout << *it1 << " ";
		//	it1++;
		//}
		//cout << endl;

		/*v.clear();*/
		//for (auto& e : v)
		//{
		//	cout << e << " ";
		//}
		//cout << endl;
		//v.push_back(1);
		//for (auto& e : v)
		//{
		//	cout << e << " ";
		//}
		//cout << endl;
		//v.pop_bak();
		//for (auto& e : v)
		//{
		//	cout << e << " ";
		//}
		//cout << endl;

		//v.pop_bak();
		//for (auto& e : v)
		//{
		//	cout << e << " ";
		//}
		//cout << endl;

		//v.pop_bak();
		//for (auto& e : v)
		//{
		//	cout << e << " ";
		//}
		//cout << endl;

		//v.pop_bak();
		//for (auto& e : v)
		//{
		//	cout << e << " ";
		//}
		//cout << endl;
	}
}

int main()
{
	jyz::test();
	return 0;
}